package EP.Web;

import SBD.CRUD.RelacionPaginaBD;
import java.io.IOException;
import java.sql.SQLException;
import java.util.List;

/**
* @class RelacionPaginas
* @author Mauricio Alvarez.
* @brief Esta clase representa la clase RelacionPagina, correspondiente a una entidad principal (EP).
*/
public class RelacionPaginas
{

    /**
     *  @var private int id_relacion_pagina
     *  @brief id de la tabla relacion_paginas (PK).
    */
    private int id_relacion_pagina;
    /**
     *  @var private int id_pagina_destino
     *  @brief id de la tabla pagina (FK). Identifica a la página destino.
    */
    private int id_pagina_destino;
    /**
     *  @var private int pag_id_pagina
     *  @brief id de la tabla pagina (FK). Identifica a la página origen.
    */
    private int id_pagina_fuente;
    /**
     *  @var private int id_termino
     *  @brief id de la tabla ontologia (FK). Identifica al termino evaluado.
    */
    private int id_termino;
    /**
     *  @var private String anchor_text
     *  @brief Contenido del anchor text.
    */
    private String anchor_text;
    /**
     *  @var private float puntaje_similitud
     *  @brief Puntaje de similitud calculada por el crawler para el texto alrededor.
    */
    private float puntaje_similitud;
    /**
     *  @var private String texto_alrededor
     *  @brief Contenido del texto alrededor.
    */
    private String texto_alrededor;
    /**
     *  @var private String header
     *  @brief Contenido del header.
    */
    private String header;
    /**
     *  @var private String title
     *  @brief Contenido del titulo de la página.
    */
    private String title;
    /**
     *  @var private RelacionPaginaBD rpcrud
     *  @brief Variable global de tipo clase RelacionPaginaBD.
    */
    private RelacionPaginaBD rpcrud;

    //////////////////////
    // CONSTRUCTOR
    //////////////////////
    public RelacionPaginas() 
    {
        rpcrud = new RelacionPaginaBD();
    }


    //////////////////////
    // GETTER Y SETTER
    //////////////////////


    public String getAnchor_text() {
        return anchor_text;
    }

    public void setAnchor_text(String anchor_text) {
        this.anchor_text = anchor_text;
    }

    public String getHeader() {
        return header;
    }

    public void setHeader(String header) {
        this.header = header;
    }

    public int getId_pagina_destino() {
        return id_pagina_destino;
    }

    public void setId_pagina_destino(int id_pagina_destino) {
        this.id_pagina_destino = id_pagina_destino;
    }

    public int getId_pagina_fuente() {
        return id_pagina_fuente;
    }

    public void setId_pagina_fuente(int id_pagina_fuente) {
        this.id_pagina_fuente = id_pagina_fuente;
    }

    public int getId_relacion_pagina() {
        return id_relacion_pagina;
    }

    public void setId_relacion_pagina(int id_relacion_pagina) {
        this.id_relacion_pagina = id_relacion_pagina;
    }

    public int getId_termino() {
        return id_termino;
    }

    public void setId_termino(int id_termino) {
        this.id_termino = id_termino;
    }

    public float getPuntaje_similitud() {
        return puntaje_similitud;
    }

    public void setPuntaje_similitud(float puntaje_similitud) {
        this.puntaje_similitud = puntaje_similitud;
    }

    public String getTexto_alrededor() {
        return texto_alrededor;
    }

    public void setTexto_alrededor(String texto_alrededor) {
        this.texto_alrededor = texto_alrededor;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }


    ////////////////////
    // OPERACIONES
    ////////////////////

    /**
     * @brief Carga los extractos de textos alrededor de la BD segun la cantidad pedida.
     * @param int CantidadMuestra
     * @return List<RelacionPaginas>
    */
    public List<RelacionPaginas> CargarRelacionPagina(int CantidadMuestra) throws ClassNotFoundException, InstantiationException, IllegalAccessException, SQLException, Error, IOException
    {
        return rpcrud.CargarRelacionPagina(CantidadMuestra);

    }//FIN CargarRelacionPagina (OK)


}//FIN CLASE RelacionPaginas